package com.icongyou.enterprise.talent_analysis.service;

import com.icongyou.enterprise.talent_analysis.entity.PortraitResponse;

/**
 * 画像缓存服务
 */
public interface PortraitCacheService {
    
    /**
     * 从缓存获取画像
     * @param studentId 学生ID
     * @param templateId 模板ID（null表示默认模板）
     * @return 缓存的画像结果，未命中返回null
     */
    PortraitResponse getFromCache(String studentId, String templateId);
    
    /**
     * 异步更新缓存
     * @param studentId 学生ID
     * @param templateId 模板ID（null表示默认模板）
     * @param response 画像结果
     */
    void asyncUpdateCache(String studentId, String templateId, PortraitResponse response);
    
    /**
     * 清除指定模板的所有缓存
     * @param templateId 模板ID
     */
    void invalidateTemplateCache(String templateId);
}
